The invention relates to assigning identification numbers to computer system devices.
To avoid contention between multiple devices connected to a computer system bus, each bus device typically is assigned a distinct address space, with the bus devices selected using bus address lines. Thus, only one bus device responds to a bus transaction having a given address specified on the address lines.
A computer system generally contains several layers of buses, including a host bus, an expansion bus, and buses contained in some peripheral boards. Referring to FIG. 1, an exemplary video board 2 includes a video bus 16 (which can be the VMI or Scenic Highway bus) connected to bus devices 10, 11, and 12, which are bus slaves. A graphics controller 18 is connected to the video bus 16 as a bus master. The video board 2 includes a frame buffer 20 for storing video data and a digital-to-analog (DAC) circuit 14 for transmitting video data to a video display 22.
The video bus 16 includes data lines VDAT and address lines VADDR as well as a clock signal, vertical and horizontal synchronization signals, and other control signals. Each of the bus devices 10, 11, and 12 is assigned a separate address space selectable by the address lines VADDR. The number of address lines required depends on the total address space of the video bus 16 and the number of devices that can potentially be connected to the bus.